<?xml version="1.0" encoding="UTF-8" ?>
<xs:schema xmlns="http://www.w3.org/2001/XMLSchema"
           targetNamespace="http://tomcat.apache.org/xml"
           xmlns:users="http://tomcat.apache.org/xml"
           xmlns:xs="http://www.w3.org/2001/XMLSchema"
           elementFormDefault="qualified"
           attributeFormDefault="unqualified"
           version="1.0">
  <xs:element name="tomcat-users">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="role" minOccurs="0" maxOccurs="unbounded">
          <xs:complexType>
            <xs:attribute name="rolename" use="required" type="users:entityname" />
            <xs:attribute name="description" type="xs:string" />
          </xs:complexType>
        </xs:element>
        <xs:element name="group" minOccurs="0" maxOccurs="unbounded">
          <xs:complexType>
            <xs:attribute name="groupname" use="required" type="users:entityname" />
            <xs:attribute name="description" type="xs:string" />
            <xs:attribute name="roles" type="xs:string" />
          </xs:complexType>
        </xs:element>
        <xs:element name="user" minOccurs="0" maxOccurs="unbounded">
          <xs:complexType>
            <xs:attribute name="username" use="required" type="users:entityname" />
            <xs:attribute name="fullname" type="xs:string" />
            <xs:attribute name="password" type="xs:string" />
            <xs:attribute name="roles" type="xs:string" />
            <xs:attribute name="groups" type="xs:string" />
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="version" type="xs:string" />
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="entityname">
    <xs:restriction base="xs:string">
      <xs:minLength value="1"/>
    </xs:restriction>
  </xs:simpleType>
</xs:schema>